package com.packenius.library.xspdf;

/**
 * Different types of page label numerals.
 * @author Christian Packenius, 2013.
 */
public enum XSPageLabelStandardType implements XSPdfContent {
  /**
   * Use "usual" arabic numerals for page labeling: 1, 2, 3, 4, ...
   */
  DecimalArabicPageLabel("D"),

  /**
   * Use uppercase roman numerals for page labeling: I, II, III, IV, ...
   */
  UpperRomanPageLabel("R"),

  /**
   * Use lowercase roman numerals for page labeling: i, ii, iii, iv, ...
   */
  LowerRomanPageLabel("r"),

  /**
   * Use uppercase letters for page labeling: A, B, C, D, ...
   */
  UpperLettersPageLabel("A"),

  /**
   * Use lowercase letters for page labeling: a, b, c, d, ...
   */
  LowerLettersPageLabel("a");

  private final String numeralType;

  XSPageLabelStandardType(String numeralType) {
    this.numeralType = "/S/" + numeralType;
  }

  /**
   * @see com.packenius.library.xspdf.XSPdfContent#getPdfContent(XSPDF)
   */
  public String getPdfContent(XSPDF xsPDF) {
    return numeralType;
  }
}
